int a[3],b[3];a={1,2,3};b=a;有什么问题?为什么不能赋值?
来源:百度知道 编辑:UC知道 时间:2024/05/16 00:06:33
main()
{
int a[3],b[3];
a={1,2,3};
b=a;
}
有什么问题?为什么不能赋值?
{
int a[3],b[3];
a={1,2,3};
b=a;
}
有什么问题?为什么不能赋值?
代码有两个错误:
1.数组想用{1,2,3}这样的方式只能放在数组声明的那句。要这样写:
int a[3] = {1,2,3};
int b[3];
如果先写了int a[3],b[3];,再初始化a就晚啦。
2.数组的赋值一般使用循环来完成,对于数组里面项目少的或者也可以手动来赋值,像这样:
b[0] = a[0];
b[1] = a[1];
b[2] = a[2];
b=a这个表达式是不允许的。a或者b都相当于一个常量指针,指向数组第一个元素,是不允许改变它们所指向的位置的。所以,不允许对a或者b赋值。
在C中数组(ARRAY)类型不能象你那样赋初值的,而且a和a[]也不等价。如果初始化的话.可以使用
static int a[]={1,2,3};
还有,数组也没有赋值语句。要用FOR完成
void main()
{
int a[3],b[3];
for(int i=0; i<3;i++)
{
a[i]=i+1;
b[i]=a[i];
}
}
unsigned int a=2;int b = -3;
fun1(int a,int b)
int a=2,b=3; float x=3.5,y=2.5; (float) (a+b)/2+(int)x%(int)y怎么算?
int a[3],b[3];a={1,2,3};b=a;有什么问题?为什么不能赋值?
已知int a=1;int b;b=(++a)+(++a)+(++a);为什么b=10?
int a=5,b; b=++a*--a;
struct st{ int a;int b[2];}a;
void a(int a,int b=0)的含义?
高分!!!int a=1,b=2;则a|b的值是3是为什么?达人赐教!!!
a=2,b=3,x=3.5,y=2.5,求(float)(a+b)/2+(int)x/(int)y的值?